package cnsatmsmart.automation.mmi.model.data.TSafe;

/**
 * @author SIK - PTIK, BPPT
 **/

public class LatLonBounds { //based on TSafe
    /* atribut - atribut yang dimiliki oleh kelas LatLonBounds */
        public final double minLat; //batas bawah dari posisi area pada garis lintang
        public final double maxLat; //batas atas dari posisi area pada garis lintang
        public final double minLon; //batas bawah dari posisi area pada garis bujur
        public final double maxLon; //batas atas dari posisi area pada garis bujur

    /* constructor - user defined ctor, no default ctor */
        // <editor-fold defaultstate="collapsed" desc="ctor">
        /*
         * @param = atribut
         */
        public LatLonBounds (double minLat, double minLon, double maxLat, double maxLon) {
            this.minLat = minLat;
            this.minLon = minLon;
            this.maxLat = maxLat;
            this.maxLon = maxLon;
        }
        // </editor-fold>

    /* method - method yang dimiliki oleh kelas RadarLayer */
        public boolean contains (Point2D p) {
        return (contains(p.getLatitude(), p.getLongitude()));
    }
        public boolean contains (double lat, double lon) {
        return (((lat > this.minLat) && (lat < this.maxLat)) && ((lon > this.minLon) && (lon < this.maxLon)));
    }

    @Override
    public String toString () {
        return (new StringBuilder().append("Latitude : ").append(this.minLat).append(" - ").append(this.maxLat).append("; Longitude : ").append(this.minLon).append(" - ").append(this.maxLon).toString());
    }
}
